"""
配置模块
使用新的三文件配置系统：providers.yaml、models.yaml、user_config.yaml
"""

from .config_manager import (
    get_config_manager,
    get_available_providers,
    get_provider_models,
    get_model_info,
    update_user_config,
    get_current_config,
    get_export_formats,
    update_export_formats
)

# 向后兼容的便捷函数
def get_available_models() -> list:
    """获取所有可用模型列表（向后兼容）"""
    models = []
    for provider in get_available_providers():
        models.extend(get_provider_models(provider))
    return models

def get_current_model() -> str:
    """获取当前使用的模型（向后兼容）"""
    _, model = get_config_manager().get_current_provider_model()
    return model

def set_current_model(model_name: str):
    """设置当前模型（向后兼容）"""
    pass  # 新的配置系统需要提供商信息

def get_model_config(model_name: str):
    """获取模型配置（向后兼容）"""
    return get_current_config()

def update_model_config(model_name: str, config_dict: dict):
    """更新模型配置（向后兼容）"""
    manager = get_config_manager()
    provider, model = manager.get_current_provider_model()
    if provider and model:
        manager.update_api_key(provider, config_dict.get('api_key', ''))

def get_app_config():
    """获取应用配置（向后兼容）"""
    return get_config_manager().get_user_config().get('app', {})

def get_logging_config():
    """获取日志配置（向后兼容）"""
    return get_config_manager().get_user_config().get('logging', {})